package top.minuy.structure.queue;
/**
 * @author Minuy
 * @time 14:50
 * @date 2021/8/22
 */
public interface Queue <E>{
    /**
     * 获取队列的元素个数
     * @return 元素个数
     */
    int getSize();

    /**
     * 判断队列是否为空
     * @return 是否为空
     */
    boolean isEmpty();

    /**
     * 入队，将元素添加到队尾
     * @param e 放入的元素
     */
    void enqueue(E e);

    /**
     * 出队，将元素从队首拿出
     * @return 拿出的元素
     */
    E dequeue();

    /**
     * 获取队首的元素
     * @return 队首的元素
     */
    E getFront();
}
